Skip to main content

Objeto: DUT

Un DUT (tipo de unidad de datos) declara un tipo de datos definido por el usuario que va más allá de los tipos estándar predefinidos.

. Símbolo:

Puede añadir este tipo de objetos debajo de la aplicación o en el POU vista. Al crear el objeto, el Agregue DUT Se abre el cuadro de diálogo. Allí puede asignar un nombre al nuevo tipo de datos y elegir entre las categorías (estructura, enumeración, alias y unión)

Categorías de tipos de datos definidos por el usuario

tabla 30. Sintaxis
TYPE <identifier> :
    <data type declaration>
END_TYPE

Una declaración DUT se adjunta entre TYPE y END_TYPE.

TYPE <identifier> :
STRUCT
    <member deklaration>
END_STRUCT
END_TYPE

Declaración de un estructura

En el caso de una estructura, los (al menos) dos miembros están encerrados entre STRUCT y END_STRUCT.

TYPE <identifier> :
(
    <list of members>
) <base data type> := <inittialization> ;
END_TYPE

Declaración de un enumeración

En el caso de una enumeración, los (al menos) dos miembros figuran entre paréntesis. Los miembros individuales están separados por comas. Todos los miembros tienen el mismo tipo de datos. Una enumeración también puede ser compatible con una lista de texto

Para obtener más información, consulte lo siguiente: Enum con soporte de listas de texto

La lista de texto se usa para localizar los valores de la enumeración. Como resultado, el objeto también tiene una vista de localización

TYPE <identifier> : <data type name> ;
END_TYPE

Declaración de un alias

Un alias es un identificador alternativo.

TYPE <identifier> :
UNION
    <member declaration>
END_UNION
END_TYPE

Declaración de un unión

Una unión permite el almacenamiento simultáneo de varios tipos de datos diferentes en la misma área de memoria. El tamaño de una unión corresponde al tamaño del tipo de datos más grande que contiene. El valor del último miembro escrito siempre se almacena en la memoria en un momento dado.

En el caso de un sindicato, los (al menos) dos miembros están encerrados entre UNION y END_UNION.



ejemplo 520. Ejemplo: STRUCT

Declaración de la estructura S_POLYGONLINE con inicialización parcial de los miembros

TYPE S_POLYGONLINE :
STRUCT
    aiStart : ARRAY[1..2] OF INT := [-99, -99];
    aiPoint1 : ARRAY[1..2] OF INT;
    aiPoint2 : ARRAY[1..2] OF INT;
    aiPoint3 : ARRAY[1..2] OF INT;
    aiPoint4 : ARRAY[1..2] OF INT;
    aiEnd : ARRAY[1..2] OF INT := [99, 99];
END_STRUCT
END_TYPE

Declaración de la estructura S_PENTAGON como una extensión de S_POLYGONLINE

TYPE S_PENTAGON EXTENDS S_POLYGONLINE :
STRUCT
    aiPoint5 : ARRAY[1..2] OF INT;
END_STRUCT
END_TYPE


ejemplo 521. Ejemplo: Enumeración

Declaración de la enumeración E_TRAFFICSIGNAL

{attribute 'qualified_only'}
{attribute 'strict'}
TYPE E_TRAFFICSIGNAL :
(
    eRed,
    eYellow,
    eGreen := 10
);
END_TYPE

Enumeración con soporte de lista de texto en la vista de localización

_cds_enum_trafficsignal_localizationview.png

los _cds_img_button_textual_view.png Vista textual y _cds_img_button_tabular_view.png Vista de localización Los botones se encuentran en el borde derecho del editor. Haga clic en los botones para alternar entre las vistas.



ejemplo 522. Ejemplo: Alias

Declaración de un alias

TYPE A_MESSAGE : STRING[50];
END_TYPE


ejemplo 523. Ejemplo: UNION

Declaración de un UNION

TYPE U_DATA :
UNION
    lrA : LREAL;
    liA : LINT;
    dwA : DWORD;
END_UNION
END_TYPE


Diálogo: Agregar DUT

Función: El cuadro de diálogo se usa para configurar un nuevo DUT objeto (tipo de unidad de datos).

Llamar: ProyectoAñadir objetoDUT menú; menú contextual del objeto de la aplicación

Nombre

Nombre del nuevo DUT tipo de datos

Ejemplo: S_POLYGONLINE

tabla 31. Tipo de datos

Estructura

Crea un objeto que declara una estructura que combina múltiples variables con diferentes tipos de datos en una unidad lógica

Las variables declaradas dentro de la estructura se denominan miembros.

Ejemplo: S_POLYGONLINE

Avanzado

standard icon: Extiende una estructura existente por más miembros

En el campo de entrada, especifique una estructura existente. Los miembros de la estructura existente están automáticamente disponibles en la nueva estructura.

Ejemplo: S_PENTAGON

Enumeración

Crea un objeto que declara una enumeración que combina varias constantes enteras en una unidad lógica

Las constantes declaradas dentro de una enumeración también se denominan valores de enumeración.

Ejemplo: E_TRAFFICSIGNAL

Una enumeración también puede tener una lista de texto. Se usa para localizar los valores de la enumeración. Como resultado, el objeto también tiene una vista de localización

Agregar soporte de lista de texto

_cds_icon_option_deactivated.png: Añade un enumeración

standard icon: Añade un enumeración con soporte de listas de texto. La lista de texto permite localizar los nombres de los valores de la enumeración.

Alias

Crea un objeto que declara un alias con el que se declara un nombre alternativo para un tipo base, tipo de datos o bloque de funciones

Ejemplo: A_MESSAGE

Unión

Crea un objeto que declara una unión que combina varios miembros con tipos de datos en su mayoría diferentes en una unidad lógica

Todos los miembros tienen el mismo desplazamiento, por lo que ocupan la misma memoria. El requisito de memoria de una unión está determinado por el requisito de memoria de su componente "más grande".

Ejemplo: U_DATA

Agregar

Cierra el cuadro de diálogo y crea el nuevo objeto.

El objeto se muestra con el cds_icon_add_dut.png símbolo en el árbol de dispositivos o en el POU vista. Cuando también se almacena una lista de texto para el objeto, el _cds_icon_textlist_dut.png se muestra el símbolo.